package CapaDatos;

public class Persona
{
    private String cedula;
    private String nombre;
    private String apellido;
    private char sexo;
    private Fecha fechaNacimiento;

    public Persona (String nombre, String apellido, String cedula, char sexo, String fechaNacimiento)
    {
        this.nombre   = nombre;
        this.apellido = apellido;
        this.cedula   = cedula;
        this.sexo     = sexo;
        this.fechaNacimiento = new Fecha(fechaNacimiento);
    }

    public Persona (String nombre, String apellido, String cedula, char sexo, Fecha fechaNacimiento)
    {
        this.nombre   = nombre;
        this.apellido = apellido;
        this.cedula   = cedula;
        this.sexo     = sexo;
        this.fechaNacimiento = fechaNacimiento;
    }

    // <editor-fold defaultstate="collapsed" desc="Getters y Setters">
    public String getNombre() {
        return this.nombre;
    }

    public void setNombre (String elNombre) {
        this.nombre = elNombre;
    }

    public String getApellido() {
        return this.apellido;
    }

    public void setApellido (String elApellido) {
        this.apellido = elApellido;
    }

    public String getCedula() {
        return this.cedula;
    }

    public void setCedula (String cedula) {
        this.cedula = cedula;
    }

    public char getSexo() {
        return this.sexo;
    }

    public void setSexo (char elSexo) {
        this.sexo = elSexo;
    }

    public Fecha getFechaNacimiento() {
        return this.fechaNacimiento;
    }

    public void setFechaNacimiento (String fecha) {
        this.fechaNacimiento = new Fecha(fecha);
    }
    // </editor-fold>

    // <editor-fold defaultstate="collapsed" desc="equals, hashCode y toString">
    @Override
    public boolean equals(Object objeto) {
        Persona objetoPersona;

        if (!(objeto instanceof Persona))
            return false;

        objetoPersona = (Persona) objeto;

        if (cedula.equals(objetoPersona.getCedula()))
            return true;

        return false;
    }

    @Override
    public int hashCode() {
        int hash = 0;
        hash += (cedula != null ? cedula.hashCode() : 0);

        return hash;
    }

    @Override
    public String toString() {
        return nombre + " " + apellido;
    }
    // </editor-fold>
}